UTSStrategyHelperLibrary "UTSStrategyHelper"
TODO: add library description here
stopLossPrice(sig, atr, factor, isLong)
Calculates the stop loss price using a distance determined by ATR multiplied by a factor. Example for Long trade SL: PRICE - (ATR * factor).
Parameters:
sig (float)
atr (float) : (float): The value of the atr.
factor (float)
isLong (bool) : (bool): The current trade direction.
Returns: (bool): A boolean value.
takeProfitPrice(sig, atr, factor, isLong)
Calculates the take profit price using a distance determined by ATR multiplied by a factor. Example for Long trade TP: PRICE + (ATR * factor). When take profit price is reached usually 50 % of the position is closed and the other 50 % get a trailing stop assigned.
Parameters:
sig (float)
atr (float) : (float): The value of the atr.
factor (float)
isLong (bool) : (bool): The current trade direction.
Returns: (bool): A boolean value.
trailingStopPrice(initialStopPrice, atr, factor, priceSource, isLong)
Calculates a trailing stop price using a distance determined by ATR multiplied by a factor. It takes an initial price and follows the price closely if it changes in a favourable way.
Parameters:
initialStopPrice (float) : (float): The initial stop price which, for consistency also should be ATR * factor behind price: e.g. Long trade: PRICE - (ATR * factor)
atr (float) : (float): The value of the atr. Ideally the ATR value at trade open is taken and used for subsequent calculations.
factor (float)
priceSource (float) : (float): The current price.
isLong (bool) : (bool): The current trade direction.
Returns: (bool): A boolean value.
hasGreaterPositionSize(positionSize)
Determines if the strategy's position size has grown since the last bar.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasSmallerPositionSize(positionSize)
Determines if the strategy's position size has decreased since the last bar.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasUnchangedPositionSize(positionSize)
Determines if the strategy's position size has changed since the last bar.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
exporthasLongPosition(positionSize)
Determines if the strategy has an open long position.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasShortPosition(positionSize)
Determines if the strategy has an open short position.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasAnyPosition(positionSize)
Determines if the strategy has any open position, regardless of short or long.
Parameters:
positionSize (float) : (float): The size of the position.
Returns: (bool): A boolean value.
hasSignal(value)
Determines if the given argument contains a valid value (means not 'na').
Parameters:
value (float) : (float): The actual value.
Returns: (bool): A boolean value.
Cari dalam skrip untuk "the strat"
Camarilla Pivot Plays█ OVERVIEW
This indicator implements the Camarilla Pivot Points levels and a system for suggesting particular plays. It only calculates and shows the 3rd, 4th, and 6th levels, as these are the only ones used by the system. In total, there are 12 possible plays, grouped into two groups of six. The algorithm constantly evaluates conditions for entering and exiting the plays and indicates them in real time, also triggering user-configurable alerts.
█ CREDITS
The Camarilla pivot plays are defined in a strategy developed by Thor Young, and the whole system is explained in his book "A Complete Day Trading System" . The indicator is published with his permission, and he is a user of it. The book is not necessary in order to understand and use the indicator; this description contains sufficient information to use it effectively.
█ FEATURES
Automatically draws plays, suggesting an entry, stop-loss, and maximum target
User can set alerts on chosen ticker to call these plays, even when not currently viewing them
Highly configurable via many options
Works for US/European stocks and US futures (at least)
Works correctly on both RTH and ETH charts
Automatically switches between RTH and ETH data
Optionally also shows the "other" set of pivots (RTH vs ETH data)
Configurable behaviour in the pre-market, not active in the post-market
Configurable sensitivity of the play detection algorithm
Can also show weekly and monthly Camarilla pivots
Well-documented options tooltips
Sensible defaults which are suitable for immediate use
Well-documented and high-quality open-source code for those who are interested
█ HOW TO USE
The defaults work well; at a minimum, just add the indicator and watch the plays being called. To avoid having to watch securities, by selecting the three dots next to the indicator name, you can set an alert on the indicator and choose to be alerted on play entry or exit events—or both. The following diagram shows several plays activated in the past (with the "Show past plays" option selected).
By default, the indicator draws plays 5 days back; this can be changed up to 20 days. The labels can be shifted left/right using the "label offset" option to avoid overlapping with other labels in this indicator or those of another indicator.
An information box at the top-right of the chart shows:
The data currently in use for the main pivots. This can switch in the pre-market if the H/L range exceeds the previous day's H/L, and if it does, you will see that switch at the time that it happens
Whether the current day's pivots are in a higher or lower range compared to the previous day's. This is based on the RTH close, so large moves in the post-market won't be reflected (there is an advanced option to change this)
The width of the value relationship in the current day compared to the previous day
The currently active play. If multiple plays are active in parallel, only the last activated one is shown
The resistance pivots are all drawn in the same colour (red by default), as are the support pivots (green by default). You can change the resistance and support colours, but it is not possible to have different colours for different levels of the same kind. Plays will always use the correct colour, drawing over the pivots. For example, R4 is red by default, but if a play treats R4 as a support, then the play will draw a green line (by default) over the red R4 line, thereby hiding it while the play is active.
There are a few advanced parameters; leave these as default unless you really know what they do. Please note the script is complicated—it does a lot. You might need to wait a few seconds while it (re)calculates on new tickers or when changing options. Give it time when first loading or changing options!
█ CONCEPTS
The indicator is focused around daily Camarilla pivots and implements 12 possible plays: 6 when in a higher range, 6 when in a lower range. The plays are labelled by two letters—the first indicates the range, the second indicates the play—as shown in this diagram:
The pivots can be calculated using only RTH (Regular Trading Hours) data, or ETH (Extended Trading Hours) data, which includes the pre-market and post-market. The indicator implements logic to automatically choose the correct data, based on the rules defined by the strategy. This is user-overridable. With the default options, ETH will be used when the H/L range in the previous day's post-market or current day's pre-market exceeds that of the previous day's regular market. In auto mode, the chosen pivots are considered the main pivots for that day and are the ones used for play evaluation. The "other" pivots can also be shown—"other" here meaning using ETH data when the main pivots use RTH data, and vice versa.
When displaying plays in the pre-market, since the RTH open is not yet known (and that value is needed to evaluate play pre-conditions), the pre-market open is used as a proxy for the RTH open. After the regular market opens, the correct RTH open is used to evaluate play conditions.
█ NOTE FOR FUTURES
Futures always use full ETH data in auto mode. Users may, however, wish to use the option "Always use RTH close," which uses the 3 p.m. Central Time (CME/Chicago) as a basis for the close in the pivot calculations (instead of the 4 p.m. actual close).
Futures don't officially have a pre-market or post-market like equities. Let's take ES on CME as an example (CME is in Chicago, so all times are Central Time, i.e., 1 hour behind Eastern Time). It trades from 17:00 Sunday to 16:00 Friday, with a daily pause between 16:00 and 17:00. However, most of the trading activity is done between 08:30 and 15:00 (Central), which you can tell from the volume spikes at those times, and this coincides with NYSE/NASDAQ regular hours (09:30–16:00 Eastern). So we define a pseudo-pre-market from 17:00 the previous day to 08:30 on the current day, then a pseudo-regular market from 08:30 to 15:00, then a pseudo-post-market from 15:00 to 16:00.
The indicator then works exactly the same as with equities—all the options behave the same, just with different session times defined for the pre-, regular, and post-market, with "RTH" meaning just the regular market and "ETH" meaning all three. The only difference from equities is that the auto calculation mode always uses ETH instead of switching based on ETH range compared to RTH range. This is so users who just leave all the defaults are not confused by auto-switching of the calculation mode; normally you'll want the pivots based on all the (ETH) data. However, both "Force RTH" and "Use RTH close with ETH data" work the same as with equities—so if, in the calculations, you really want to only use RTH data, or use all ETH H/L data but use the RTH close (at 15:00), you can.
█ LIMITATIONS
The pivots are very close to those shown in DAS Trader Pro. They are not to-the-cent exact, but within a few cents. The reasons are:
TradingView uses real-time data from CBOE One, so doesn't have access to full exchange data (unless you pay for it in TradingView), and
the close/high/low are taken from the intraday timeframe you are currently viewing, not daily data—which are very close, but often not exactly the same. For example, the high on the daily timeframe may differ slightly from the daily high you'll see on an intraday timeframe.
I have occasionally seen larger than a few cents differences in the pivots between these and DAS Trader Pro—this is always due to differences in data, for example a big spike in the data in TradingView but not in DAS Trader Pro, or vice versa. The more traded the stock is, the less the difference tends to be. Highly traded stocks are usually within a few cents. Less traded stocks may be more (for example, 30¢ difference in R4 is the highest I've seen). If it bothers you, official NYSE/NASDAQ data in TradingView is quite inexpensive (but even that doesn't make the 8am candle identical).
The 6th Camarilla level does not have a standard definition and may not match the level shown on other platforms. It does match the definition used by DAS Trader Pro.
The indicator is an intraday indicator (despite also being able to show weekly and monthly pivots on an intraday chart). It deactivates on a daily timeframe and higher. It is untested on sub-minute timeframes; you may encounter runtime errors on these due to various historical data referencing issues. Also, the play detection algorithm would likely be unpredictable on sub-minute timeframes. Therefore, sub-minute timeframes are formally unsupported.
The indicator was developed and tested for US/European stocks and US futures. It may or may not work as intended for stocks and futures in different locations. It does not work for other security types (e.g., crypto), where I have no evidence that the strategy has any relevance.
Best SMA FinderThis script, Best SMA Finder, is a tool designed to identify the most robust simple moving average (SMA) length for a given chart, based on historical backtest performance. It evaluates hundreds of SMA values (from 10 to 1000) and selects the one that provides the best balance between profitability, consistency, and trade frequency.
What it does:
The script performs individual backtests for each SMA length using either "Long Only" or "Buy & Sell" logic, as selected by the user. For each tested SMA, it computes:
- Total number of trades
- Profit Factor (total profits / total losses)
- Win Rate
- A composite Robustness Score, which integrates Profit Factor, number of trades (log-scaled), and win rate.
Only SMA configurations that meet the user-defined minimum trade count are considered valid. Among all valid candidates, the script selects the SMA length with the highest robustness score and plots it on the chart.
How to use it:
- Choose the strategy type: "Long Only" or "Buy & Sell"
- Set the minimum trade count to filter out statistically irrelevant results
- Enable or disable the summary stats table (default: enabled)
The selected optimal SMA is plotted on the chart in blue. The optional table in the top-right corner shows the corresponding SMA length, trade count, Profit Factor, Win Rate, and Robustness Score for transparency.
Key Features:
- Exhaustive SMA optimization across 991 values
- Customizable trade direction and minimum trade filters
- In-chart visualization of results via table and plotted optimal SMA
- Uses a custom robustness formula to rank SMA lengths
Use cases:
Ideal for traders who want to backtest and auto-select a historically effective SMA without manual trial-and-error. Useful for swing and trend-following strategies across different timeframes.
📌 Limitations:
- Not a full trading strategy with position sizing or stop-loss logic
- Only one entry per direction at a time is allowed
- Designed for exploration and optimization, not as a ready-to-trade system
This script is open-source and built entirely from original code and logic. It does not replicate any closed-source script or reuse significant external open-source components.
Change in State of Delivery (CISD) [SB Instant]🧠 Modified by SB | Core Logic by LuxAlgo
🔗 Licensed under CC BY-NC-SA 4.0
Change in State of Delivery (CISD) is a concept rooted in observing shifts in order flow behavior, designed to detect the first signs of trend exhaustion and potential reversal. This model tracks when the current delivery (trend) structure — bullish or bearish — is violated by an opposing force, signaling a potential change in market intent.
In simple terms:
A Bullish CISD is triggered when sellers fail to maintain control, and buyers break above a delivery line.
A Bearish CISD is triggered when buyers fail, and sellers break below a delivery line.
This version uses real-time logic, triggering alerts immediately on break, rather than waiting for candle-close confirmation — giving faster, actionable signals to precision-driven traders.
⚙️ Core Features
Detection Modes
Classic: Traditional swing-based structural break detection
Liquidity Sweep: Logic incorporating wick sweeps (liquidity grabs)
Custom Parameters
Swing Length: Number of candles used to identify swing points
Minimum CISD Duration: Minimum length required for valid delivery phase
Maximum Swing Validity: How long the structure remains valid for potential breaks
Visual Options
Label and line styling options
Solid line = Initial break of delivery structure
Dashed line = Continuation break in the same trend direction
This allows you to visually differentiate a new reversal vs. a continuation of the existing trend.
🚨 Built-in Alerts
Bullish CISD Detected (Instant)
Bearish CISD Detected (Instant)
These alerts fire immediately when structure is broken, offering early confirmation for aggressive or reactive trade setups.
🔔 IMPORTANT:
If an alert triggers but the delivery line is not present, wait for the price to form the CISD label again and manually mark the price level using a horizontal ray. This ensures you are trading from a clearly defined structure.
🕒 Recommended Timeframes
✅ Use 30-Minute or 4-Hour charts to identify high-confidence CISD zones
🎯 Then drop to the 1-Minute or 5-Minute chart for precise entry execution
This top-down approach aligns higher timeframe narrative with lower timeframe entry triggers, increasing your edge in both timing and context.
🧠 How to Use CISD Effectively
Bullish Scenario:
Watch for breaks above bearish delivery structures, especially if confirmed with:
Fair Value Gaps (FVG)
The Strat 2-2 reversal
MSS (Market Structure Shift)
Bearish Scenario:
Look for breaks below bullish delivery setups in alignment with:
BOS (Break of Structure)
The Strat 3-1-2
Bearish liquidity sweeps
Key Tip:
Solid line = Initial CISD (new shift)
Dashed line = Continuation of current trend
This visual distinction helps you determine when a market is shifting vs. extending.
📎 Disclaimer
This tool is provided for educational purposes only and is not intended as financial advice. Always backtest, paper trade, and manage risk responsibly.
📚 Credits
Original CISD framework developed by LuxAlgo
Real-time execution logic, alert enhancements, and intraday utility designed by SB (SamB)
BTC Daily DCA CalculatorThe BTC Daily DCA Calculator is an indicator that calculates how much Bitcoin (BTC) you would own today by investing a fixed dollar amount daily (Dollar-Cost Averaging) over a user-defined period. Simply input your start date, end date, and daily investment amount, and the indicator will display a table on the last candle showing your total BTC, total invested, portfolio value, and unrealized yield (in USD and percentage).
Features
Customizable Inputs: Set the start date, end date, and daily dollar amount to simulate your DCA strategy.
Results Table: Displays on the last candle (top-right of the chart) with:
Total BTC: The accumulated Bitcoin from daily purchases.
Total Invested ($): The total dollars invested.
Portfolio Value ($): The current value of your BTC holdings.
Unrealized Yield ($): Your profit/loss in USD.
Unrealized Yield (%): Your profit/loss as a percentage.
Visual Markers: Green triangles below the chart mark each daily investment.
Overlay on Chart: The table and markers appear directly on the BTCUSD price chart for easy reference.
Daily Timeframe: Designed for Daily (1D) charts to ensure accurate calculations.
How to Use
Add the Indicator: Apply the indicator to a BTCUSD chart (e.g., Coinbase:BTCUSD, Binance:BTCUSDT).
Set Daily Timeframe: Ensure your chart is on the Daily (1D) timeframe, or the script will display an error.
Configure Inputs: Open the indicator’s Settings > Inputs tab and set:
Start Date: When to begin the DCA strategy (e.g., 2024-01-01).
End Date: When to end the strategy (e.g., 2025-04-27 or earlier).
Daily Investment ($): The fixed dollar amount to invest daily (e.g., $100).
View Results: Scroll to the last candle in your date range to see the results table in the top-right corner of the chart. Green triangles below the bars indicate investment days.
Settings
Start Date: Choose the start date for your DCA strategy (default: 2024-01-01).
End Date: Choose the end date (default: 2025-04-27). Must be after the start date and within available chart data.
Daily Investment ($): Set the daily investment amount (default: $100). Minimum is $0.01.
Notes
Timeframe: The indicator requires a Daily (1D) chart. Other timeframes will trigger an error.
Data: Ensure your BTCUSD chart has historical data for the selected date range. Use reliable pairs like Coinbase:BTCUSD or Binance:BTCUSDT.
Limitations: Does not account for trading fees or slippage. Future dates (beyond the current date) will not display results.
Performance: Works best with historical data. Free TradingView accounts may have limited historical data; consider premium for longer ranges.
TASC 2025.05 Trading The Channel█ OVERVIEW
This script implements channel-based trading strategies based on the concepts explained by Perry J. Kaufman in the article "A Test Of Three Approaches: Trading The Channel" from the May 2025 edition of TASC's Traders' Tips . The script explores three distinct trading methods for equities and futures using information from a linear regression channel. Each rule set corresponds to different market behaviors, offering flexibility for trend-following, breakout, and mean-reversion trading styles.
█ CONCEPTS
Linear regression
Linear regression is a model that estimates the relationship between a dependent variable and one or more independent variables by fitting a straight line to the observed data. In the context of financial time series, traders often use linear regression to estimate trends in price movements over time.
The slope of the linear regression line indicates the strength and direction of the price trend. For example, a larger positive slope indicates a stronger upward trend, and a larger negative slope indicates the opposite. Traders can look for shifts in the direction of a linear regression slope to identify potential trend trading signals, and they can analyze the magnitude of the slope to support trading decisions.
One caveat to linear regression is that most financial time series data does not follow a straight line, meaning a regression line cannot perfectly describe the relationships between values. Prices typically fluctuate around a regression line to some degree. As such, analysts often project ranges above and below regression lines, creating channels to model the expected extent of the data's variability. This strategy constructs a channel based on the method used in Kaufman's article. It measures the maximum distances from points on the linear regression line to historical price values, then adds those distances and the current slope to the regression points.
Depending on the trading style, traders might look for prices to move outside an established channel for breakout signals, or they might look for price action to reach extremes within the channel for potential mean reversion opportunities.
█ STRATEGY CALCULATIONS
Primary trade rules
This strategy implements three distinct sets of rules for trend, breakout, and mean-reversion trades based on the methods Kaufman describes in his article:
Trade the trend (Rule 1) : Open new positions when the sign of the slope changes, indicating a potential trend reversal. Close short trades and enter a long trade when the slope changes from negative to positive, and do the opposite when the slope changes from positive to negative.
Trade channel breakouts (Rule 2) : Open new positions when prices cross outside the linear regression channel for the current sample. Close short trades and enter a long trade when the price moves above the channel, and do the opposite when the price moves below the channel.
Trade within the channel (Rule 3) : Open new positions based on price values within the channel's range. Close short trades and enter a long trade when the price is near the channel's low, within a specified percentage of the channel's range, and do the opposite when the price is near the channel's high. With this rule, users can also filter the trades based on the channel's slope. When the filter is active, long positions are allowed only when the slope is positive, and short positions are allowed only when it is negative.
Position sizing
Kaufman's strategy uses specific trade sizes for equities and futures markets:
For an equities symbol, the number of shares traded is $10,000 divided by the current price.
For a futures symbol, the number of contracts traded is based on a volatility-adjusted formula that divides $25,000 by the product of the 20-bar average true range and the instrument's point value.
By default, this script automatically uses these sizes for its trade simulation on equities and futures symbols and does not simulate trading on other symbols. However, users can control position sizes from the "Settings/Properties" tab and enable trade simulation on other symbol types by selecting the "Manual" option in the script's "Position sizing" input.
Stop-loss
This strategy includes the option to place an accompanying stop-loss order for each trade, which users can enable from the "SL %" input in the "Settings/Inputs" tab. When enabled, the strategy places a stop-loss order at a specified percentage distance from the closing price where the entry order occurs, allowing users to compare how the strategy performs with added loss protection.
█ USAGE
This strategy adapts its display logic for the three trading approaches based on the rule selected in the "Trade rule" input:
For all rules, the script plots the linear regression slope in a separate pane. The plot is color-coded to indicate whether the current slope is positive or negative.
When the selected rule is "Trade the trend", the script plots triangles in the separate pane to indicate when the slope's direction changes from positive to negative or vice versa. Additionally, it plots a color-coded SMA on the main chart pane, allowing visual comparison of the slope to directional changes in a moving average.
When the rule is "Trade channel breakouts" or "Trade within the channel", the script draws the current period's linear regression channel on the main chart pane, and it plots bands representing the history of the channel values from the specified start time onward.
When the rule is "Trade within the channel", the script plots overbought and oversold zones between the bands based on a user-specified percentage of the channel range to indicate the value ranges where new trades are allowed.
Users can customize the strategy's calculations with the following additional inputs in the "Settings/Inputs" tab:
Start date : Sets the date and time when the strategy begins simulating trades. The script marks the specified point on the chart with a gray vertical line. The plots for rules 2 and 3 display the bands and trading zones from this point onward.
Period : Specifies the number of bars in the linear regression channel calculation. The default is 40.
Linreg source : Specifies the source series from which to calculate the linear regression values. The default is "close".
Range source : Specifies whether the script uses the distances from the linear regression line to closing prices or high and low prices to determine the channel's upper and lower ranges for rules 2 and 3. The default is "close".
Zone % : The percentage of the channel's overall range to use for trading zones with rule 3. The default is 20, meaning the width of the upper and lower zones is 20% of the range.
SL% : If the checkbox is selected, the strategy adds a stop-loss to each trade at the specified percentage distance away from the closing price where the entry order occurs. The checkbox is deselected by default, and the default percentage value is 5.
Position sizing : Determines whether the strategy uses Kaufman's predefined trade sizes ("Auto") or allows user-defined sizes from the "Settings/Properties" tab ("Manual"). The default is "Auto".
Long trades only : If selected, the strategy does not allow short positions. It is deselected by default.
Trend filter : If selected, the strategy filters positions for rule 3 based on the linear regression slope, allowing long positions only when the slope is positive and short positions only when the slope is negative. It is deselected by default.
NOTE: Because of this strategy's trading rules, the simulated results for a specific symbol or channel configuration might have significantly fewer than 100 trades. For meaningful results, we recommend adjusting the start date and other parameters to achieve a reasonable number of closed trades for analysis.
Additionally, this strategy does not specify commission and slippage amounts by default, because these values can vary across market types. Therefore, we recommend setting realistic values for these properties in the "Cost simulation" section of the "Settings/Properties" tab.
AI Volume StrategyAI Volume Strategy detects significant volume spikes and combines them with trend direction and candlestick color to generate buy and sell signals. The strategy uses an Exponential Moving Average (EMA) of volume to identify abnormal volume spikes that may indicate strong market activity. Additionally, it uses a 50-period EMA of price to filter the trend and decide on entry direction.
Key Features:
Volume Spike Detection: The strategy detects when the current volume exceeds the EMA of volume by a user-defined multiplier, signaling abnormal increases in market activity.
Trend Direction Filter: The strategy uses a 50-period EMA of price to determine the market trend. Buy signals are generated when the price is above the EMA (uptrend), and sell signals are generated when the price is below the EMA (downtrend).
Candle Color Filter: The strategy generates a buy signal only when the current candle is bullish (green) and a sell signal only when the current candle is bearish (red).
Exit after X Bars: The strategy automatically closes the position after a specified number of bars (default is 5 bars), but the exit condition can be adjusted based on user preference, timeframe, and backtesting results. The default exit is after 5 bars, but users can set it to 1 bar or any other number depending on their preferences and strategy.
Signals:
Buy Signal: Generated when a volume spike occurs, the trend is upward, and the current candle is bullish.
Sell Signal: Generated when a volume spike occurs, the trend is downward, and the current candle is bearish.
Alerts:
Buy Alert: Alerts the user when a buy signal is triggered.
Sell Alert: Alerts the user when a sell signal is triggered.
Visualization:
Buy Signal: A green label appears below the bar when the buy conditions are met.
Sell Signal: A red label appears above the bar when the sell conditions are met.
Volume EMA: Optionally, the Volume EMA line can be plotted on the chart to visualize volume trends.
This strategy helps traders identify potential entry points based on increased volume activity while considering trend direction and candlestick patterns. With the ability to adjust the exit condition, users can fine-tune the strategy to their specific needs and backtest results.
Dkoderweb repainting issue fix strategyHarmonic Pattern Recognition Trading Strategy
This TradingView strategy called "Dkoderweb repainting issue fix strategy" is designed to identify and trade harmonic price patterns with optimized entry and exit points using Fibonacci levels. The strategy implements various popular harmonic patterns including Bat, Butterfly, Gartley, Crab, Shark, ABCD, and their anti-patterns.
Key Features
Pattern Recognition: Identifies 17+ harmonic price patterns including standard and anti-patterns
Fibonacci-Based Entries and Exits: Uses customizable Fibonacci levels for precision entries, take profits, and stop losses
Alternative Timeframe Analysis: Option to use higher timeframes for pattern identification
Heiken Ashi Support: Optional use of Heiken Ashi candles instead of regular candlesticks
Visual Indicators:
Pattern visualization with ZigZag indicator
Buy/sell signal markers
Color-coded background to highlight active trade zones
Customizable Fibonacci level display
How It Works
The strategy uses a ZigZag-based pattern identification system to detect pivot points
When a valid harmonic pattern forms, the strategy calculates the optimal entry window using the specified Fibonacci level (default 0.382)
Entries trigger when price returns to the entry window after pattern completion
Take profit and stop loss levels are automatically set based on customizable Fibonacci ratios
Visual alerts notify you of entries and exits
The strategy tracks active trades and displays them with background color highlights
Customizable Settings
Trade size
Entry window Fibonacci level (default 0.382)
Take profit Fibonacci level (default 0.618)
Stop loss Fibonacci level (default -0.618)
Alert messages for entries and exits
Display options for specific Fibonacci levels
Alternative timeframe selection
This strategy is designed to fix repainting issues that are common in harmonic pattern strategies, ensuring more reliable signals and backtesting results.
NY First Candle Break and RetestStrategy Overview
Session and Time Parameters:
The strategy focuses on the New York trading session, starting at 9:30 AM and lasting for a predefined session length, typically 3 to 4 hours. This timing captures the most active market hours, providing ample trading opportunities.
Strategy Parameters:
Utilizes the Average True Range (ATR) to set dynamic stop-loss levels, ensuring risk is managed according to market volatility.
Employs a reward-to-risk ratio to determine take profit levels, aiming for a balanced approach between potential gains and losses.
Strategy Settings:
Incorporates simple moving averages (EMA) and the Volume Weighted Average Price (VWAP) to identify trend direction and price levels.
Volume confirmation is used to validate breakouts, ensuring trades are based on significant market activity.
Trade Management:
Features a trailing stop mechanism to lock in profits as the trade moves in favor, with multiple take profit levels to secure gains incrementally.
The strategy is designed to handle both long and short positions, adapting to market conditions.
Alert Settings:
Provides alerts for key events such as session start, breakout, retest, and entry signals, helping traders stay informed and act promptly.
Visual cues on the chart highlight entry and exit points, making it easier for beginners to follow the strategy.
This strategy is particularly suited for the current volatile market environment, where simplicity and clear guidelines can help beginner traders navigate the complexities of trading. It emphasizes risk management and uses straightforward indicators to make informed trading decisions.
I put together this Trading View scalping strategy for futures markets with some help from Claude AI. Shoutout to everyone who gave me advice along the way—I really appreciate it! I’m sure there’s room for improvement, so feel free to share your thoughts… just go easy on me. :)
BB Breakout + Momentum Squeeze [Strategy]This Strategy is Based on 3 free indicators
- Bollinger Bands Breakout Oscillator: Link
- TTM Squeeze Pro: Link
- Rolling ATR Bands: Link
Bollinger Bands Breakout Oscillator - This tool shows how strong a market trend is by measuring how often prices move outside their normal Bollinger bands range. It helps you see whether prices are strongly moving in one direction or just moving sideways. By looking at how much and how frequently prices push beyond their typical boundaries, you can identify which direction the market is heading over your selected time period.
TM Squeeze Pro - This is a custom version of the TTM Squeeze indicator.
It's designed to help traders spot consolidation phases in the market (when price is coiling or "squeezing") and to catch breakouts early when volatility returns. The logic is based on the relationship between Bollinger Bands and Keltner Channels, combined with a momentum oscillator to show direction and strength.
Rolling ATR Bands - This indicator combines volatility bands (ATR) with momentum and trend signals to show where the market might be breaking out, retesting, or trending. It's highly visual and helpful for traders looking to time entries/exits during trending or volatile moves.
Logic Of the Strategy:
We are going to use the Bollinger Bands Breakout to determine the direction of the market. Than check the Volatility of the price by looking at the TTM Squeeze indicator. And use the ATR Bands to determine dynamic Stop Losses and based on the calculate the Take Profit targets and quantity for each position dynamically.
For the Long Setup:
1. We need to see the that Bull Power (Green line of the Bollinger Bands Breakout Oscilator) is crossing the level of 50.
2. Check the presence of volatility (Green dot based on the TTM Squeeze indicator)
For the Short Setup:
1. We need to see the that Bear Power (Red line of the Bollinger Bands Breakout Oscilator) is crossing the level of 50.
2. Check the presence of volatility (Green dot based on the TTM Squeeze indicator)
Stop Loss is determined by the Lower ATR Band (for the Long entry) and Upper ATR Band (For the Short entry)
Take Profit is 1:1.5 risk reward ration, which means if the Stop loss is 1% the TP target will be 1.5%
Move stop Loss to Breakeven: If the price will go in the direction of the trade for at least half of the Risk Reward target then the stop will automatically be adjusted to the entry price. For Example: the Stop Loss is 1%, the price has move at least 0.5% in the direction of your trade and that will move the Stop Loss level to the Entry point.
You can Adjust the parameters for each indicator used in that script and also adjust the Risk and Money management block to see how the PnL will change.
Falcon SignalsThis script is a TradingView Pine Script for a trading strategy called "Falcon Signals." It combines multiple technical indicators and strategies to generate buy and sell signals. Here’s a breakdown of what the script does:
1. Supertrend Indicator:
The script calculates the Supertrend indicator using the Average True Range (ATR) and a specified multiplier (factor). The Supertrend is used to define the trend direction, with a green line for an uptrend and a red line for a downtrend.
2. EMA (Exponential Moving Average):
Two EMAs are used: a fast EMA (9-period) and a slow EMA (21-period). The script checks for crossovers of the fast EMA above or below the slow EMA as a basis for buying and selling signals.
3. RSI (Relative Strength Index):
The RSI (14-period) is used to measure the momentum of the price. A buy signal is generated when the RSI is less than 70, while a sell signal is generated when it’s greater than 30.
4. Take Profit (TP) and Stop Loss (SL):
The script allows users to set custom percentages for take profit and stop loss. The take profit is set at a certain percentage above the entry price for buy signals, and the stop loss is set at a percentage below the entry price, and vice versa for sell signals.
5. Trailing Stop:
A trailing stop can be enabled, which dynamically adjusts the stop loss level as the price moves in the favorable direction. If the price moves against the position by a certain trailing percentage, the position will be closed.
6. Engulfing Patterns:
The script checks for bullish and bearish engulfing candlestick patterns, indicating potential reversals. A bullish engulfing pattern is marked with a teal label ("🔄 Reversal Up"), and a bearish engulfing pattern is marked with a fuchsia label ("🔄 Reversal Down").
7. Plotting:
The script plots various indicators and signals:
Entry line: Shows where the buy or sell signal is triggered.
Take profit and stop loss levels are plotted as lines.
EMA and Supertrend lines are plotted on the chart.
Trailing stop line, if enabled, is also plotted.
8. Buy and Sell Labels:
The script places labels on the chart when buy or sell signals are triggered, indicating the price at which the order should be placed.
9. Exit Line:
The script plots an exit line when the trailing stop is hit, signaling when a position should be closed.
10. Alerts:
Alerts are set for both buy and sell signals, notifying the trader when to act based on the strategy's conditions.
This strategy combines trend-following (Supertrend), momentum (RSI), and price action patterns (EMA crossovers and engulfing candlestick patterns) to generate trade signals. It also offers the flexibility of take profit, stop loss, and trailing stop features.
50 EMA Crossover With Monthly DCARecommended Chart Interval = 1W
Overview:
This strategy combines trend-following principles with dollar-cost averaging (DCA), aiming to efficiently deploy capital while minimizing market timing risk.
How It Works:
When the Long Condition is Not Met (i.e., Price < 50 EMA):
- If the price is below the 50 EMA, a fixed DCA amount is added to a cash reserve every month.
- This ensures that capital is consistently accumulated, even when the strategy isn't in a long position.
When the Long Condition is Met (i.e., Price > 50 EMA):
- A long position is opened when the price is above the 50 EMA.
- At this point, the entire capital, including the accumulated cash reserve, is deployed into the market.
- While the strategy is long, a DCA buy order is placed every month using the set DCA amount, continuously investing as the market conditions allow.
Exit Strategy:
If the price falls below the 50 EMA, the strategy closes all positions, and the cash reserve accumulation process begins again.
Key Benefits:
✔ Systematic Investing: Ensures consistent capital deployment while following trend signals.
✔ Cash Efficiency: Accumulates uninvested funds when conditions aren’t met and deploys them at optimal moments.
✔ Risk Management: Exits when the price trend weakens, protecting capital.
Conclusion:
This method allows for efficient capital growth by combining a trend-following approach with disciplined DCA, ensuring risk is managed while capital is deployed systematically at optimal points in the market. 🚀
LUX CLARA - EMA + VWAP (No ATR Filter) - v6EMA STRAT SHOUT OUTOUTLIERSSSSS
Overview:
an intraday strategy built around two core principles:
Trend Confirmation using the 50 EMA (Exponential Moving Average) in relation to the VWAP (Volume-Weighted Average Price).
Entry Signals triggered by the 8 EMA crossing the 50 EMA in the direction of that confirmed trend.
Key Logic:
Bullish Trend if the 50 EMA is above VWAP. Only long entries are allowed when the 8 EMA crosses above the 50 EMA during that bullish phase.
Bearish Trend if the 50 EMA is below VWAP. Only short entries are allowed when the 8 EMA crosses below the 50 EMA during that bearish phase.
Intraday Focus: Trades are restricted to a user-defined session window (default 7:30 AM–11:30 AM), aligning entries/exits with peak intraday liquidity.
Exit Rule: Positions close automatically when the 8 EMA crosses back in the opposite direction of the entry.
Why It Works:
EMA + VWAP helps detect both immediate momentum (EMAs) and overall institutional bias (VWAP).
By confining trades to a set intraday window, the strategy aims to capture morning volatility while avoiding choppy afternoon or overnight sessions.
Customization:
Users can adjust EMA lengths, session times, or incorporate stops/targets for additional risk management.
It can be tested on various symbols and intraday timeframes to gauge performance and robustness.
FRACTAL DIMENSIONSFRACTAL DIMENSIONS was created to allow us to properly visualize
the higher time frame dimensional data, While remaining on a lower
time frame. The Fractal dimensions are basically the higher time frames.
Remaining on a lower time frame allows us to get tighter entries and exits.
Each dimension is set in a wave degree formation. From primary to sub-minute,
depending on the time frame being utilized.
These multidimensional wave degrees will be utilized later in the strategy.
This indicator was broken off of the whole for the sake of drawing lines.
The data here is just for debugging purposes and is not used in the strategy,
but yet remains pretty awesome by itself.
Fractal dimensions is the foundation of the main strategy to come.
Now that we have this data, what are we going to do with it?
Range Filter Buy and Sell 5min## **Enhanced Range Filter Strategy: A Comprehensive Overview**
### **1. Introduction**
The **Enhanced Range Filter Strategy** is a powerful technical trading system designed to identify high-probability trading opportunities while filtering out market noise. It utilizes **range-based trend filtering**, **momentum confirmation**, and **volatility-based risk management** to generate precise entry and exit signals. This strategy is particularly useful for traders who aim to capitalize on trend-following setups while avoiding choppy, ranging market conditions.
---
### **2. Key Components of the Strategy**
#### **A. Range Filter (Trend Determination)**
- The **Range Filter** smooths price fluctuations and helps identify clear trends.
- It calculates an **adjusted price range** based on a **sampling period** and a **multiplier**, ensuring a dynamic trend-following approach.
- **Uptrends:** When the current price is above the range filter and the trend is strengthening.
- **Downtrends:** When the price falls below the range filter and momentum confirms the move.
#### **B. RSI (Relative Strength Index) as Momentum Confirmation**
- RSI is used to **filter out weak trades** and prevent entries during overbought/oversold conditions.
- **Buy Signals:** RSI is above a certain threshold (e.g., 50) in an uptrend.
- **Sell Signals:** RSI is below a certain threshold (e.g., 50) in a downtrend.
#### **C. ADX (Average Directional Index) for Trend Strength Confirmation**
- ADX ensures that trades are only taken when the trend has **sufficient strength**.
- Avoids trading in low-volatility, ranging markets.
- **Threshold (e.g., 25):** Only trade when ADX is above this value, indicating a strong trend.
#### **D. ATR (Average True Range) for Risk Management**
- **Stop Loss (SL):** Placed **one ATR below** (for long trades) or **one ATR above** (for short trades).
- **Take Profit (TP):** Set at a **3:1 reward-to-risk ratio**, using ATR to determine realistic price targets.
- Ensures volatility-adjusted risk management.
---
### **3. Entry and Exit Conditions**
#### **📈 Buy (Long) Entry Conditions:**
1. **Price is above the Range Filter** → Indicates an uptrend.
2. **Upward trend strength is positive** (confirmed via trend counter).
3. **RSI is above the buy threshold** (e.g., 50, to confirm momentum).
4. **ADX confirms trend strength** (e.g., above 25).
5. **Volatility is supportive** (using ATR analysis).
#### **📉 Sell (Short) Entry Conditions:**
1. **Price is below the Range Filter** → Indicates a downtrend.
2. **Downward trend strength is positive** (confirmed via trend counter).
3. **RSI is below the sell threshold** (e.g., 50, to confirm momentum).
4. **ADX confirms trend strength** (e.g., above 25).
5. **Volatility is supportive** (using ATR analysis).
#### **🚪 Exit Conditions:**
- **Stop Loss (SL):**
- **Long Trades:** 1 ATR below entry price.
- **Short Trades:** 1 ATR above entry price.
- **Take Profit (TP):**
- Set at **3x the risk distance** to achieve a favorable risk-reward ratio.
- **Ranging Market Exit:**
- If ADX falls below the threshold, indicating a weakening trend.
---
### **4. Visualization & Alerts**
- **Colored range filter line** changes based on trend direction.
- **Buy and Sell signals** appear as labels on the chart.
- **Stop Loss and Take Profit levels** are plotted as dashed lines.
- **Gray background highlights ranging markets** where trading is avoided.
- **Alerts trigger on Buy, Sell, and Ranging Market conditions** for automation.
---
### **5. Advantages of the Enhanced Range Filter Strategy**
✅ **Trend-Following with Noise Reduction** → Helps avoid false signals by filtering out weak trends.
✅ **Momentum Confirmation with RSI & ADX** → Ensures that only strong, valid trades are executed.
✅ **Volatility-Based Risk Management** → ATR ensures adaptive stop loss and take profit placements.
✅ **Works on Multiple Timeframes** → Effective for day trading, swing trading, and scalping.
✅ **Visually Intuitive** → Clearly displays trade signals, SL/TP levels, and trend conditions.
---
### **6. Who Should Use This Strategy?**
✔ **Trend Traders** who want to enter trades with momentum confirmation.
✔ **Swing Traders** looking for medium-term opportunities with a solid risk-reward ratio.
✔ **Scalpers** who need precise entries and exits to minimize false signals.
✔ **Algorithmic Traders** using alerts for automated execution.
---
### **7. Conclusion**
The **Enhanced Range Filter Strategy** is a powerful trading tool that combines **trend-following techniques, momentum indicators, and risk management** into a structured, rule-based system. By leveraging **Range Filters, RSI, ADX, and ATR**, traders can improve trade accuracy, manage risk effectively, and filter out unfavorable market conditions.
This strategy is **ideal for traders looking for a systematic, disciplined approach** to capturing trends while **avoiding market noise and false breakouts**. 🚀
Enhanced Range Filter Strategy with ATR TP/SLBuilt by Omotola
## **Enhanced Range Filter Strategy: A Comprehensive Overview**
### **1. Introduction**
The **Enhanced Range Filter Strategy** is a powerful technical trading system designed to identify high-probability trading opportunities while filtering out market noise. It utilizes **range-based trend filtering**, **momentum confirmation**, and **volatility-based risk management** to generate precise entry and exit signals. This strategy is particularly useful for traders who aim to capitalize on trend-following setups while avoiding choppy, ranging market conditions.
---
### **2. Key Components of the Strategy**
#### **A. Range Filter (Trend Determination)**
- The **Range Filter** smooths price fluctuations and helps identify clear trends.
- It calculates an **adjusted price range** based on a **sampling period** and a **multiplier**, ensuring a dynamic trend-following approach.
- **Uptrends:** When the current price is above the range filter and the trend is strengthening.
- **Downtrends:** When the price falls below the range filter and momentum confirms the move.
#### **B. RSI (Relative Strength Index) as Momentum Confirmation**
- RSI is used to **filter out weak trades** and prevent entries during overbought/oversold conditions.
- **Buy Signals:** RSI is above a certain threshold (e.g., 50) in an uptrend.
- **Sell Signals:** RSI is below a certain threshold (e.g., 50) in a downtrend.
#### **C. ADX (Average Directional Index) for Trend Strength Confirmation**
- ADX ensures that trades are only taken when the trend has **sufficient strength**.
- Avoids trading in low-volatility, ranging markets.
- **Threshold (e.g., 25):** Only trade when ADX is above this value, indicating a strong trend.
#### **D. ATR (Average True Range) for Risk Management**
- **Stop Loss (SL):** Placed **one ATR below** (for long trades) or **one ATR above** (for short trades).
- **Take Profit (TP):** Set at a **3:1 reward-to-risk ratio**, using ATR to determine realistic price targets.
- Ensures volatility-adjusted risk management.
---
### **3. Entry and Exit Conditions**
#### **📈 Buy (Long) Entry Conditions:**
1. **Price is above the Range Filter** → Indicates an uptrend.
2. **Upward trend strength is positive** (confirmed via trend counter).
3. **RSI is above the buy threshold** (e.g., 50, to confirm momentum).
4. **ADX confirms trend strength** (e.g., above 25).
5. **Volatility is supportive** (using ATR analysis).
#### **📉 Sell (Short) Entry Conditions:**
1. **Price is below the Range Filter** → Indicates a downtrend.
2. **Downward trend strength is positive** (confirmed via trend counter).
3. **RSI is below the sell threshold** (e.g., 50, to confirm momentum).
4. **ADX confirms trend strength** (e.g., above 25).
5. **Volatility is supportive** (using ATR analysis).
#### **🚪 Exit Conditions:**
- **Stop Loss (SL):**
- **Long Trades:** 1 ATR below entry price.
- **Short Trades:** 1 ATR above entry price.
- **Take Profit (TP):**
- Set at **3x the risk distance** to achieve a favorable risk-reward ratio.
- **Ranging Market Exit:**
- If ADX falls below the threshold, indicating a weakening trend.
---
### **4. Visualization & Alerts**
- **Colored range filter line** changes based on trend direction.
- **Buy and Sell signals** appear as labels on the chart.
- **Stop Loss and Take Profit levels** are plotted as dashed lines.
- **Gray background highlights ranging markets** where trading is avoided.
- **Alerts trigger on Buy, Sell, and Ranging Market conditions** for automation.
---
### **5. Advantages of the Enhanced Range Filter Strategy**
✅ **Trend-Following with Noise Reduction** → Helps avoid false signals by filtering out weak trends.
✅ **Momentum Confirmation with RSI & ADX** → Ensures that only strong, valid trades are executed.
✅ **Volatility-Based Risk Management** → ATR ensures adaptive stop loss and take profit placements.
✅ **Works on Multiple Timeframes** → Effective for day trading, swing trading, and scalping.
✅ **Visually Intuitive** → Clearly displays trade signals, SL/TP levels, and trend conditions.
---
### **6. Who Should Use This Strategy?**
✔ **Trend Traders** who want to enter trades with momentum confirmation.
✔ **Swing Traders** looking for medium-term opportunities with a solid risk-reward ratio.
✔ **Scalpers** who need precise entries and exits to minimize false signals.
✔ **Algorithmic Traders** using alerts for automated execution.
---
### **7. Conclusion**
The **Enhanced Range Filter Strategy** is a powerful trading tool that combines **trend-following techniques, momentum indicators, and risk management** into a structured, rule-based system. By leveraging **Range Filters, RSI, ADX, and ATR**, traders can improve trade accuracy, manage risk effectively, and filter out unfavorable market conditions.
This strategy is **ideal for traders looking for a systematic, disciplined approach** to capturing trends while **avoiding market noise and false breakouts**. 🚀
GQT GPT - Volume-based Support & Resistance Zones V2搞钱兔,搞钱是为了更好的生活。
Title: GQT GPT - Volume-based Support & Resistance Zones V2
Overview:
This strategy is implemented in PineScript v5 and is designed to identify key support and resistance zones based on volume-driven fractal analysis on a 1-hour timeframe. It computes fractal high points (for resistance) and fractal low points (for support) using volume moving averages and specific price action criteria. These zones are visually represented on the chart with customizable lines and zone fills.
Trading Logic:
• Entry: The strategy initiates a long position when the price crosses into the support zone (i.e., when the price drops into a predetermined support area).
• Exit: The long position is closed when the price enters the resistance zone (i.e., when the price rises into a predetermined resistance area).
• Time Frame: Trading signals are generated solely from the 1-hour chart. The strategy is only active within a specified start and end date.
• Note: Only long trades are executed; short selling is not part of the strategy.
Visualization and Parameters:
• Support/Resistance Zones: The zones are drawn based on calculated fractal values, with options to extend the lines to the right for easier tracking.
• Customization: Users can configure the appearance, such as line style (solid, dotted, dashed), line width, colors, and label positions.
• Volume Filtering: A volume moving average threshold is used to confirm the fractal signals, enhancing the reliability of the support and resistance levels.
• Alerts: The strategy includes alert conditions for when the price enters the support or resistance zones, allowing for timely notifications.
⸻
搞钱兔,搞钱是为了更好的生活。
标题: GQT GPT - 基于成交量的支撑与阻力区间 V2
概述:
本策略使用 PineScript v5 实现,旨在基于成交量驱动的分形分析,在1小时级别的图表上识别关键支撑与阻力区间。策略通过成交量移动平均线和特定的价格行为标准计算分形高点(阻力)和分形低点(支撑),并以自定义的线条和区间填充形式直观地显示在图表上。
交易逻辑:
• 进场条件: 当价格进入支撑区间(即价格跌入预设支撑区域)时,策略在没有持仓的情况下发出做多信号。
• 离场条件: 当价格进入阻力区间(即价格上升至预设阻力区域)时,持有多头头寸则会被平仓。
• 时间范围: 策略的信号仅基于1小时级别的图表,并且仅在指定的开始日期与结束日期之间生效。
• 备注: 本策略仅执行多头交易,不进行空头操作。
可视化与参数设置:
• 支撑/阻力区间: 根据计算得出的分形值绘制支撑与阻力线,可选择将线条延伸至右侧,便于后续观察。
• 自定义选项: 用户可以调整线条样式(实线、点线、虚线)、线宽、颜色及标签位置,以满足个性化需求。
• 成交量过滤: 策略使用成交量移动平均阈值来确认分形信号,提高支撑和阻力区间的有效性。
• 警报功能: 当价格进入支撑或阻力区间时,策略会触发警报条件,方便用户及时关注市场变化。
⸻
Pro Scalper AI [BullByte]The Pro Scalper AI is a powerful, multi-faceted scalping indicator designed to assist active traders in identifying short-term trading opportunities with precision. By combining trend analysis, momentum indicators, dynamic weighting, and optional AI forecasting, this tool provides both immediate and latched trading signals based on confirmed (closed bar) data—helping to avoid repainting issues. Its flexible design includes customizable filters such as a higher timeframe trend filter, and adjustable settings for ADX, ATR, and Hull Moving Average (HMA), giving traders the ability to fine-tune the strategy to different markets and timeframes.
Key Features :
- Confirmed Data Processing :
Utilizes a helper function to lock in price and volume data only from confirmed (closed) bars, ensuring the reliability of signals without the risk of intrabar repainting.
- Trend Analysis :
Employs ADX and Directional Movement (DI) calculations along with a locally computed HMA to detect short-term trends. An optional higher timeframe trend filter can further refine the analysis.
- Flexible Momentum Modes :
Choose between three momentum calculation methods—Stochastic RSI, Fisher RSI, or Williams %R—to match your preferred style of analysis. This versatility allows you to optimize the indicator for different market conditions.
- Dynamic Weighting & Volatility Adjustments :
Adjusts the contribution of trend, momentum, volatility, and volume through dynamic weighting. This ensures that the indicator responds appropriately to varying market conditions by scaling its sensitivity with user-defined maximum factors.
- Optional AI Forecast :
For those who want an extra edge, the built-in AI forecasting module uses linear regression to predict future price moves and adjusts oscillator thresholds accordingly. This feature can be toggled on or off, with smoothing options available for more stable output.
- Latching Mode for Signal Persistenc e:
The script features a latching mechanism that holds signals until a clear reversal is detected, preventing whipsaws and providing more reliable trade entries and exits.
- Comprehensive Visualizations & Dashboard :
- Composite Oscillator & Dynamic Thresholds : The oscillator is plotted with dynamic upper and lower thresholds, and the area between them is filled with a color that reflects the active trading signal (e.g., Strong Buy, Early Sell).
- Signal Markers : Both immediate (non-latching) and stored (latched) signals are marked on the chart with distinct shapes (circles, crosses, triangles, and diamonds) to differentiate between signal types.
- Real-Time Dashboard : A customizable dashboard table displays key metrics including ADX, oscillator value, chosen momentum mode, HMA trend, higher timeframe trend, volume factor, AI bias (if enabled), and more, allowing traders to quickly assess market conditions at a glance.
How to Use :
1. S ignal Interpretation :
- Immediate Signals : For traders who prefer quick entries, the indicator displays immediate signals such as “Strong Buy” or “Early Sell” based on the current market snapshot.
- Latched Signals : When latching is enabled, the indicator holds a signal state until a clear reversal is confirmed, offering sustained trade setups.
2. Trend Confirmation :
- Use the HMA trend indicator and the optional higher timeframe trend filter to confirm the prevailing market direction before acting on signals.
3. Dynamic Thresholds & AI Forecasting :
- Monitor the dynamically adjusted oscillator thresholds and, if enabled, the AI bias to gauge potential shifts in market momentum.
4. Risk Management :
- Combine these signals with additional analysis and sound risk management practices to determine optimal entry and exit points for scalping trades.
Disclaimer :
This script is provided for educational and informational purposes only and does not constitute financial advice. Trading involves risk, and past performance is not indicative of future results. Always perform your own analysis and use proper risk management strategies before trading.
Arbitrage Spot-Futures Don++Strategy: Spot-Futures Arbitrage Don++
This strategy has been designed to detect and exploit arbitrage opportunities between the Spot and Futures markets of the same trading pair (e.g. BTC/USDT). The aim is to take advantage of price differences (spreads) between the two markets, while minimizing risk through dynamic position management.
[Operating principle
The strategy is based on calculating the spread between Spot and Futures prices. When this spread exceeds a certain threshold (positive or negative), reverse positions are opened simultaneously on both markets:
- i] Long Spot + Short Futures when the spread is positive.
- i] Short Spot + Long Futures when the spread is negative.
Positions are closed when the spread returns to a value close to zero or after a user-defined maximum duration.
[Strategy strengths
1. Adaptive thresholds :
- Entry/exit thresholds can be dynamic (based on moving averages and standard deviations) or fixed, offering greater flexibility to adapt to market conditions.
2. Robust data management :
- The script checks the validity of data before executing calculations, thus avoiding errors linked to missing or invalid data.
3. Risk limitation :
- A position size based on a percentage of available capital (default 10%) limits exposure.
- A time filter limits the maximum duration of positions to avoid losses due to persistent spreads.
4. Clear visualization :
- Charts include horizontal lines for entry/exit thresholds, as well as visual indicators for spread and Spot/Futures prices.
5. Alerts and logs :
- Alerts are triggered on entries and exits to inform the user in real time.
[Points for improvement or completion
Although this strategy is functional and robust, it still has a few limitations that could be addressed in future versions:
1. [Limited historical data :
- TradingView does not retrieve real-time data for multiple symbols simultaneously. This can limit the accuracy of calculations, especially under conditions of high volatility.
2. [Lack of liquidity management :
- The script does not take into account the volumes available on the order books. In conditions of low liquidity, it may be difficult to execute orders at the desired prices.
3. [Non-dynamic transaction costs :
- Transaction costs (exchange fees, slippage) are set manually. A dynamic integration of these costs via an external API would be more realistic.
4. User-dependency for symbols :
- Users must manually specify Spot and Futures symbols. Automatic symbol validation would be useful to avoid configuration errors.
5. Lack of advanced backtesting :
- Backtesting is based solely on historical data available on TradingView. An implementation with third-party data (via an API) would enable the strategy to be tested under more realistic conditions.
6. [Parameter optimization :
- Certain parameters (such as analysis period or spread thresholds) could be optimized for each specific trading pair.
[How can I contribute?
If you'd like to help improve this strategy, here are a few ideas:
1. Add additional filters:
- For example, a filter based on volume or volatility to avoid false signals.
2. Integrate dynamic costs:
- Use an external API to retrieve actual costs and adjust thresholds accordingly.
3. Improve position management:
- Implement hedging or scalping mechanisms to maximize profits.
4. Test on other pairs:
- Evaluate the strategy's performance on other assets (ETH, SOL, etc.) and adjust parameters accordingly.
5. Publish backtesting results :
- Share detailed analyses of the strategy's performance under different market conditions.
[Conclusion
This Spot-Futures arbitrage strategy is a powerful tool for exploiting price differentials between markets. Although it is already functional, it can still be improved to meet more complex trading scenarios. Feel free to test, modify and share your ideas to make this strategy even more effective!
[Thank you for contributing to this open-source community!
If you have any questions or suggestions, please feel free to comment or contact me directly.
Buy on 5% dip strategy with time adjustment
This script is a strategy called "Buy on 5% Dip Strategy with Time Adjustment 📉💡," which detects a 5% drop in price and triggers a buy signal 🔔. It also automatically closes the position once the set profit target is reached 💰, and it has additional logic to close the position if the loss exceeds 14% after holding for 230 days ⏳.
Strategy Explanation
Buy Condition: A buy signal is triggered when the price drops 5% from the highest price reached 🔻.
Take Profit: The position is closed when the price hits a 1.22x target from the average entry price 📈.
Forced Sell Condition: If the position is held for more than 230 days and the loss exceeds 14%, the position is automatically closed 🚫.
Leverage & Capital Allocation: Leverage is adjustable ⚖️, and you can set the percentage of capital allocated to each trade 💸.
Time Limits: The strategy allows you to set a start and end time ⏰ for trading, making the strategy active only within that specific period.
Code Credits and References
Credits: This script utilizes ideas and code from @QuantNomad and jangdokang for the profit table and algorithm concepts 🔧.
Sources:
Monthly Performance Table Script by QuantNomad:
ZenAndTheArtOfTrading's Script:
Strategy Performance
This strategy provides risk management through take profit and forced sell conditions and includes a performance table 📊 to track monthly and yearly results. You can compare backtest results with real-time performance to evaluate the strategy's effectiveness.
The performance numbers shown in the backtest reflect what would have happened if you had used this strategy since the launch date of the SOXL (the Direxion Daily Semiconductor Bull 3x Shares ETF) 📅. These results are not hypothetical but based on actual performance from the day of the ETF’s launch 📈.
Caution ⚠️
No Guarantee of Future Results: The results are based on historical performance from the launch of the SOXL ETF, but past performance does not guarantee future results. It’s important to approach with caution when applying it to live trading 🔍.
Risk Management: Leverage and capital allocation settings are crucial for managing risk ⚠️. Make sure to adjust these according to your risk tolerance ⚖️.
Reversal & Breakout Strategy with ORB### Reversal & Breakout Strategy with ORB
This strategy combines three distinct trading approaches—reversals, trend breakouts, and opening range breakouts (ORB)—into a single, cohesive system. The goal is to capture high-probability setups across different market conditions, leveraging a mashup of technical indicators for confirmation and risk management. Below, I’ll explain why this combination works, how the components interact, and how to use it effectively.
#### Why the Mashup?
- **Reversals**: Identifies overextended moves using RSI (overbought/oversold) and SMA50 crosses, filtered by VWAP and SMA200 trend direction. This targets mean-reversion opportunities in trending markets.
- **Breakouts**: Uses EMA9/EMA20 crossovers with VWAP and SMA200 confirmation to catch momentum-driven trend continuations.
- **Opening Range Breakout (ORB)**: Detects early momentum by breaking the high/low of a user-defined opening range (default: 15 bars) with volume confirmation. This adds a time-based edge, ideal for intraday trading.
The synergy comes from blending these methods: reversals catch pullbacks, breakouts ride trends, and ORB exploits early volatility—all filtered by trend (SMA200) and anchored by VWAP for context.
#### How It Works
1. **Indicators**:
- **EMA9/EMA20**: Fast-moving averages for breakout signals.
- **SMA50**: Medium-term trend filter for reversals.
- **SMA200**: Long-term trend direction to align trades.
- **RSI (14)**: Measures overbought (>70) or oversold (<30) conditions.
- **VWAP**: Acts as a dynamic support/resistance level.
- **ATR (14)**: Sets stop-loss distance (default: 1.5x ATR).
- **Volume**: Confirms ORB breakouts (1.5x average volume of opening range).
2. **Entry Conditions**:
- **Long**: Triggers on reversal (SMA50 cross + RSI < 30 + below VWAP + uptrend), breakout (EMA9 > EMA20 + above VWAP + uptrend), or ORB (break above opening range high + volume).
- **Short**: Triggers on reversal (SMA50 cross + RSI > 70 + above VWAP + downtrend), breakout (EMA9 < EMA20 + below VWAP + downtrend), or ORB (break below opening range low + volume).
3. **Risk Management**:
- Risks 5% of equity per trade (based on the initial capital set in the strategy tester).
- Stop-loss: Based on lowest low/highest high over 7 bars ± 1.5x ATR.
- Targets: Two exits at 1:1 and 1:2 risk:reward (50% of position at each).
- Break-even: Stop moves to entry price after the first target is hit.
4. **Backtesting Settings**:
- Commission: Hardcoded at 0.1% per trade (realistic for most brokers).
- Slippage: Hardcoded at 2 ticks (realistic for most markets).
- Tested on datasets yielding 100+ trades (e.g., 2-min or 5-min charts over months).
#### How to Use It
- **Timeframe**: Works best on intraday (2-min, 5-min) or daily charts. Adjust `Opening Range Bars` (e.g., 15 bars = 30 min on 2-min chart) for your timeframe.
- **Settings**:
- Set your initial equity in the TradingView strategy tester’s "Properties" tab under "Initial Capital" (e.g., $10,000). The script automatically risks 5% of this equity per trade.
- Adjust `Stop Loss ATR Multiplier` or `Risk:Reward Targets` based on your risk tolerance.
- Note that commission (0.1%) and slippage (2 ticks) are fixed in the script for backtesting consistency.
- **Execution**: Enter on signal, monitor plotted stop (red) and targets (green/blue). The strategy supports pyramiding (up to 2 positions) for scaling into trends.
#### Backtesting Notes
Results are realistic with commission (0.1%) and slippage (2 ticks) included. For a sufficient sample, test on volatile instruments (e.g., stocks, forex) over 3-6 months on lower timeframes. The default 1.5x ATR stop may seem wide, but it’s justified to avoid premature exits in volatile markets—feel free to tweak it with justification. The script assumes an initial capital of $10,000 in the strategy tester for the 5% risk calculation (e.g., $500 risk per trade); adjust this in the "Properties" tab as needed.
This mashup isn’t just a random mix; it’s a deliberate fusion of complementary strategies, offering traders flexibility across market phases. Questions? Let me know!
ICT Bread and Butter Sell-SetupICT Bread and Butter Sell-Setup – TradingView Strategy
Overview:
The ICT Bread and Butter Sell-Setup is an intraday trading strategy designed to capitalize on bearish market conditions. It follows institutional order flow and exploits liquidity patterns within key trading sessions—London, New York, and Asia—to identify high-probability short entries.
Key Components of the Strategy:
🔹 London Open Setup (2:00 AM – 8:20 AM NY Time)
The London session typically sets the initial directional move of the day.
A short-term high often forms before a downward push, establishing the daily high.
🔹 New York Open Kill Zone (8:20 AM – 10:00 AM NY Time)
The New York Judas Swing (a temporary rally above London’s high) creates an opportunity for short entries.
Traders fade this move, anticipating a sell-off targeting liquidity below previous lows.
🔹 London Close Buy Setup (10:30 AM – 1:00 PM NY Time)
If price reaches a higher timeframe discount array, a retracement higher is expected.
A bullish order block or failure swing signals a possible reversal.
The risk is set just below the day’s low, targeting a 20-30% retracement of the daily range.
🔹 Asia Open Sell Setup (7:00 PM – 2:00 AM NY Time)
If institutional order flow remains bearish, a short entry is taken around the 0-GMT Open.
Expect a 15-20 pip decline as the Asian range forms.
Strategy Rules:
📉 Short Entry Conditions:
✅ New York Judas Swing occurs (price moves above London’s high before reversing).
✅ Short entry is triggered when price closes below the open.
✅ Stop-loss is set 10 pips above the session high.
✅ Take-profit targets liquidity zones on higher timeframes.
📈 Long Entry (London Close Reversal):
✅ Price reaches a higher timeframe discount array between 10:30 AM – 1:00 PM NY Time.
✅ A bullish order block confirms the reversal.
✅ Stop-loss is set 10 pips below the day’s low.
✅ Take-profit targets 20-30% of the daily range retracement.
📉 Asia Open Sell Entry:
✅ Price trades slightly above the 0-GMT Open.
✅ Short entry is taken at resistance, targeting a quick 15-20 pip move.
Why Use This Strategy?
🚀 Institutional Order Flow Tracking – Aligns with smart money concepts.
📊 Precise Session Timing – Uses market structure across London, New York, and Asia.
🎯 High-Probability Entries – Focuses on liquidity grabs and engineered stop hunts.
📉 Optimized Risk Management – Defined stop-loss and take-profit levels.
This strategy is ideal for traders looking to trade with institutions, fade liquidity grabs, and capture high-probability short setups during the trading day. 📉🔥
CCT Pi Cycle Top/BottomPi Cycle Top/bottom: The Ultimate Market Cycle Indicator
Introduction
The Pi Cycle Top/bottom Indicator is one of the most reliable tools for identifying Bitcoin market cycle peaks and bottoms. Its effectiveness lies in the strategic combination of moving averages that historically align with major market cycle reversals. Unlike traditional moving average crossovers, this indicator applies an advanced iterative approach to pinpoint price extremes with higher accuracy.
This version, built entirely with Pine Script™ v6, introduces unprecedented precision in detecting both the Pi Cycle Top and Pi Cycle Bottom, eliminating redundant labels, optimizing visual clarity, and ensuring the indicator adapts dynamically to evolving market conditions.
What is the Pi Cycle Theory?
The Pi Cycle Top and Pi Cycle Bottom were originally introduced based on a simple yet profound discovery: key moving average crossovers consistently align with macro market tops and bottoms.
Pi Cycle Top: The crossover of the 111-day Simple Moving Average (SMA) and the 350-day SMA multiplied by 2 has historically signaled market tops with astonishing accuracy.
Pi Cycle Bottom: The intersection of the 150-day Exponential Moving Average (EMA) and the 471-day SMA has repeatedly marked significant market bottoms.
While traditional moving average strategies often suffer from lag and false signals, the Pi Cycle Indicator enhances accuracy by applying a range-based scanning methodology, ensuring that only the most critical reversals are detected.
How This Indicator Works
Unlike basic moving average crossovers, this script introduces a unique iteration process to refine the detection of Pi Cycle points. Here’s how it works:
Detecting Crossovers:
Identifies the Golden Cross (bullish crossover) and Death Cross (bearish crossover) for both the Pi Cycle Top and Pi Cycle Bottom.
Iterating Through the Cycle:
Instead of plotting a simple crossover point, this script scans the range between each Golden and Death Cross to identify the absolute lowest price (Pi Cycle Bottom) and highest price (Pi Cycle Top) within that cycle.
Precision Labeling:
The indicator dynamically adjusts label positioning:
If the price at the crossover is below the fast moving average → the label is placed on the moving average with a downward pointer.
If the price is above the fast moving average → the label is placed below the candle with an upward pointer.
This ensures optimal visibility and prevents misleading signal placement.
Advanced Pine Script v6 Features:
Labels and moving average names are only shown on the last candle, reducing chart noise while maintaining clarity.
Offers full user customization, allowing traders to toggle:
Pi Cycle Top & Bottom visibility
Moving average labels
Crossover labels
Why This Indicator is Superior
This script is not just another moving average crossover tool—it is a market cycle tracker designed for long-term investors and analysts who seek:
✔ High-accuracy macro cycle identification
✔ Elimination of false signals using an iterative range-based scan
✔ Automatic detection of market extremes without manual adjustments
✔ Optimized visuals with smart label positioning
✔ First-of-its-kind implementation using Pine Script™ v6 capabilities
How to Use It?
Bull Market Tops:
When the Pi Cycle Top indicator flashes, consider the potential for a market cycle peak.
Historically, Bitcoin has corrected significantly after these signals.
Bear Market Bottoms:
When the Pi Cycle Bottom appears, it suggests a macro accumulation phase.
These signals have aligned perfectly with historical cycle bottoms.
Final Thoughts
The Pi Cycle Top/bottom Indicator is a must-have tool for traders, investors, and analysts looking to anticipate long-term trend reversals with precision. With its refined methodology, superior label positioning, and cutting-edge Pine Script™ v6 optimizations, this is the most reliable version ever created.